package com.heima.article.service;

import com.heima.model.mess.app.AggBehaviorDTO;
import com.heima.model.mess.app.NewBehaviorDTO;

import java.util.List;

/**
 * @Author XHui
 * @Since 2024/3/11 16:55
 * @Version 1.0
 */
public interface HotArticleService {

    /**
     * 计算热点文章
     * 1. 根据当前时间，查询近5天的文章数据
     * 2. 每隔10S计算文章的得分(文章被用户的各种操作都可以增加文章得分)
     * 3. 按照 频道 缓存若干篇热点文章到Redis中，
     */
    void computeHotArticle();

    List<NewBehaviorDTO> getBehaviorListFromRedis();

    List<AggBehaviorDTO> getAggBehaviorList(List<NewBehaviorDTO> newBehaviorDTOList);

    /**
     * 重新计算文章热度  更新redis缓存
     * @param aggBehavior
     */
    public void updateApArticle(AggBehaviorDTO aggBehavior);

    void batchUpdateApArticles(List<AggBehaviorDTO> aggBehaviors);
}
